package vn.edu.saigontech.ncms.service;

import java.util.Collection;
import java.util.Date;

import vn.edu.saigontech.ncms.model.enumeration.Campus;
import vn.edu.saigontech.ncms.model.enumeration.Gender;
import vn.edu.saigontech.ncms.model.enumeration.Nationality;
import vn.edu.saigontech.ncms.model.enumeration.TeacherType;
import vn.edu.saigontech.ncms.model.info.Teacher;
import vn.edu.saigontech.ncms.service.impl.TeacherServiceImpl;

public interface TeacherService extends GenericService<Teacher, Long> {
	
	static final TeacherService INSTANCE = new TeacherServiceImpl();
	
	Collection<Teacher> findActiveByTeacherType(TeacherType teacherType);
		
	Collection<Teacher> findAllAreActive();
	
	Collection<Teacher> find(String firstName, String midName, String lastName, Date dob, TeacherType teacherType, Gender gender, Nationality nationality, Campus campus, String email, String phoneNumner, Date fromDate, Date toDate, Boolean active, String comment);
	
	Teacher find(Long offeringId, Date date);
}